package cn.tedu.blackhorse.service;

import cn.tedu.blackhorse.pojo.dto.CourseAddNewDTO;
import cn.tedu.blackhorse.pojo.dto.CourseUpdateDTO;
import cn.tedu.blackhorse.pojo.vo.CourseListItemVO;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;
@Transactional
public interface ICourseService {
    /**
     * 添加课程
     * @param courseAddNewDTO 课程数据
     */
    void addNew(CourseAddNewDTO courseAddNewDTO);

    /**
     * 删除课程
     * @param id 根据id删除课程
     */
    void deleteById(Long id);

    /**
     * 根据课程id,修改课程详情
     * @param id  课程id
     * @param courseUpdateDTO 新的课程数据
     */
    void update(Long id, CourseUpdateDTO courseUpdateDTO);

    /**
     *  查询课程列表
     * @return 课程列表的数据
     */
    List<CourseListItemVO> list();
}
